package com.xrui.hbase.exception;

/**
 * Runtime (unchecked) IOException.
 *
 * Use this exception when you cannot throw IOException directly (eg. because checked
 * exceptions do not allow IOException).
 *
 */
@SuppressWarnings("serial")
public final class IOException extends RuntimeException {

  /** Creates an unchecked IOException. */
  public IOException() {
  }

  /**
   * Creates an unchecked IOException with the specified message and cause.
   *
   * @param message Message to include in this IOException.
   * @param cause Underlying cause of the IOException.
   */
  public IOException(String message, Throwable cause) {
    super(message, cause);
  }

  /**
   * Creates an unchecked IOException with the specified message.
   *
   * @param message Message to include in the IOException.
   */
  public IOException(String message) {
    super(message);
  }

  /**
   * Wraps an IOException into an unchecked exception.
   *
   * @param cause Underlying cause of the IOException.
   */
  public IOException(Throwable cause) {
    super(cause);
  }
}
